export const commonUtil = {
	/**
	 * 页面跳转
	 * @param {string} to 跳转链接 /pages/idnex/index
	 * @param {Object} param 参数 {key : value, ...}
	 * @param {string} mode 模式 
	 */
	redirectTo(to, param, mode) {
		let url = to;
		if (param != undefined) {
			Object.keys(param).forEach(function(key) {
				if (url.indexOf('?') != -1) {
					url += "&" + key + "=" + param[key];
				} else {
					url += "?" + key + "=" + param[key];
				}
			});
		}
		switch (mode) {
			case 'tabbar':
				// 跳转到 tabBar 页面，并关闭其他所有非 tabBar 页面。
				uni.switchTab({
					url: url
				})
				break;
			case 'redirectTo':
				// 关闭当前页面，跳转到应用内的某个页面。
				uni.redirectTo({
					url: url
				});
				break;
			case 'reLaunch':
				// 关闭所有页面，打开到应用内的某个页面。
				uni.reLaunch({
					url: url
				});
				break;
			default:
				// 保留当前页面，跳转到应用内的某个页面
				uni.navigateTo({
					url: url
				});
		}
	},
	// 获取appid
	getAppid() {
		let accountInfo = uni.getAccountInfoSync();
		let appid = accountInfo.miniProgram.appId; // 小程序 appId
		return appid;
	},

	// 清除对象里面为空的值
	deleteParamsNull(obj) {
		for (let key in obj) {
			if (obj[key] === '' || obj[key] === null || obj[key] === undefined || obj[key] === 'undefined' || obj[
					key] === 'null') {
				delete obj[key]
			}
		}
		return obj
	},


	/**
	 * 截断字符串
	 * @param str 需要截断的字符串
	 * @param index 截断开始位置
	 * @param number 截断的个数
	 * @param symbol 被截断部分要替换的符号 @default '…'
	 */
	truncateStr(str = '', index, number, symbol = '…') {
		return !!str && str.length > number ? str.substring(index) + symbol : str;
	},
	// 关掉键盘
	handleBlur() {
		uni.hideKeyboard()
	},
	// 格式富文本图片样式
	formatRichText(html) {
		// 正则表达式匹配img标签
		const imgReg = /<img[^>]*>/gi
		// 替换图片标签，添加style属性
		return html.replace(imgReg, function(match) {
			match = match.replace(/style="[^"]+"/gi, '').replace(/style='[^']+'/gi, '');
			match = match.replace(/width="[^"]+"/gi, '').replace(/width='[^']+'/gi, '');
			match = match.replace(/height="[^"]+"/gi, '').replace(/height='[^']+'/gi, '');
			return match.replace('<img', '<img style="max-width:100%;height:auto;"');
		});
	},
}